#include<iostream>
#include<string>
#include<vector>
#include<list>
using namespace std;

//int main()
//{
//	string s1, ret;
//	getline(cin, s1);
//
//	string::iterator cur = s1.begin();
//	string::iterator prev = cur;
//	
//	int maxsz = 0;
//	
//	while (cur != s1.end())
//	{
//		if (isdigit(*cur))
//		{
//			prev = cur;
//			while (isdigit(*cur) && cur != s1.end())
//				++cur;
//			if (cur - prev > maxsz)
//			{
//				maxsz = cur - prev;
//				ret = string(prev, cur);
//			}
//		}
//		else
//			cur++;
//	}
//	cout << ret;
//}

//class Solution {
//public:
//
//    int MoreThanHalfNum_Solution(vector<int>& numbers) {
//        int count = 1, flag = numbers[0];
//        
//        for (int i=1;i<numbers.size();i++)
//        {
//            if (count == 0)
//                flag = numbers[i];
//            if (numbers[i] == flag)
//                count++;
//            if (numbers[i] != flag)
//                count--;
//        }
//        return flag;
//    }
//};
//
//
//int main()
//{
//    Solution s;
//    vector<int> v({ 1,2,3,2,2,2,5,4,2 });
//    cout<<s.MoreThanHalfNum_Solution(v);
//}

//int main()
//{
//	int ar[] = { 0,1, 2, 3, 4,  5, 6, 7, 8, 9 };
//	int n = sizeof(ar) / sizeof(int);
//
//	list<int> mylist(ar, ar + n);
//	list<int>::iterator pos = find(mylist.begin(), mylist.end(), 5);
//
//	reverse(mylist.begin(), pos);
//	reverse(pos, mylist.end());
//
//	list<int>::const_reverse_iterator crit = mylist.crbegin();
//	while (crit != mylist.crend())
//	{
//		cout << *crit << " ";
//		++crit;
//	}
//	cout << endl;
//}